/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ru.jSkyRoom.interfaces.major;

import ru.jSkyRoom.interfaces.additional.HasEquipSlot;
import ru.jSkyRoom.interfaces.additional.HasCastDuration;
import ru.jSkyRoom.interfaces.additional.HasCastType;
import ru.jSkyRoom.interfaces.additional.HasChargeTime;
import ru.jSkyRoom.interfaces.additional.HasCost;
import ru.jSkyRoom.interfaces.additional.HasDeliveryType;
import ru.jSkyRoom.interfaces.additional.HasPerk;
import ru.jSkyRoom.interfaces.additional.HasRange;
import ru.jSkyRoom.interfaces.additional.HasSpellType;
import skyproc.MagicItem;

/**
 *
 * @author Rakev
 */
public interface Spell extends JSkyMagicItem, HasEquipSlot, HasCost, HasCastType, HasDeliveryType, HasChargeTime, HasPerk, HasRange, HasSpellType, HasCastDuration {

    public boolean getFlag(MagicItem.SPELFlag flag);

    public void setFlag(MagicItem.SPELFlag flag);

    public void unsetFlag(MagicItem.SPELFlag flag);

}
